package algorithm.arrayAlgorithm;

/**
 * @ClassName: SortArrayByParity
 * @Description 905. 按奇偶排序数组
 * 给你一个整数数组 nums，将 nums 中的的所有偶数元素移动到数组的前面，后跟所有奇数元素。
 *
 * 返回满足此条件的 任一数组 作为答案。
 * @Author skywingking
 * @Date 2022/4/28 22:46
 **/
public class SortArrayByParity {
    public int[] sortArrayByParity(int[] nums) {
        if(null == nums || nums.length == 0){
            return nums;
        }
        int n = nums.length;
        int tmp = 0,left = 0,right = n - 1;
        while(left < right){
            if(nums[left] % 2 == 0){
                left++;
            }else if(nums[right] % 2 != 0){
                right--;
            }else{
                tmp = nums[left];
                nums[left] = nums[right];
                nums[right] = tmp;
                left++;
                right--;
            }
        }
        return nums;
    }
}